package com.jsmsframework.sms.send.po;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

@JsonInclude(Include.NON_NULL)
public class JsmsAccessTimerSms {

	private static final long serialVersionUID = 8884923026714807330L;

	/**
	 * 帐号，最长6位
	 */
	private String clientid;

	/**
	 * 密码，8－12位，MD5加密后32位，小写
	 */
	private String password;

	/**
	 * 发送手机号码（国内短信不要加前缀，国际短信号码前须带相应的国家区号，如日本：0081），
	 * 支持多号码，号码之间用英文逗号隔开，最多100个
	 * 拼接起来以后用compress_type中指定的压缩类型压缩，然后用base64编码压缩后的数据
	 */
	private String mobilelist;

	/**
	 * 短信类型，0：通知短信，4：验证码短信，5：营销短信
	 */
	private String smstype;

	/**
	 * 签名 + 短信内容，UTF-8编码（短信内容最长500个字，签名最长10个字）
	 */
	private String content;

	/**
	 * (可选) 提交类型: 0:子账户, 1: 代理商
	 */
	private String submittype;
	/**
	 * 定时发送时间,
	 */
	private String sendtime;

	/**
	 * (可选) 自扩展端口，1－4位，可以为空(注：此功能需要通道支持)
	 */
	private String extend;

	/**
	 * (可选) 用户透传ID，随状态报告返回，最长60位
	 */
	private String uid;

	/**
	 * (可选) 默认为gzip压缩 "0": gzip压缩
	 */
	private String compress_type;

	public String getClientid() {
		return clientid;
	}

	public void setClientid(String clientid) {
		this.clientid = clientid;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public String getMobilelist() {
		return mobilelist;
	}

	public void setMobilelist(String mobilelist) {
		this.mobilelist = mobilelist;
	}

	public String getSmstype() {
		return smstype;
	}

	public void setSmstype(String smstype) {
		this.smstype = smstype;
	}

	public String getContent() {
		return content;
	}

	public void setContent(String content) {
		this.content = content;
	}

	public String getSubmittype() {
		return submittype;
	}

	public void setSubmittype(String submittype) {
		this.submittype = submittype;
	}

	public String getSendtime() {
		return sendtime;
	}

	public void setSendtime(String sendtime) {
		this.sendtime = sendtime;
	}

	public String getExtend() {
		return extend;
	}

	public void setExtend(String extend) {
		this.extend = extend;
	}

	public String getUid() {
		return uid;
	}

	public void setUid(String uid) {
		this.uid = uid;
	}

	public String getCompress_type() {
		return compress_type;
	}

	public void setCompress_type(String compress_type) {
		this.compress_type = compress_type;
	}

	public String toString() {
		return ToStringBuilder.reflectionToString(this, ToStringStyle.SHORT_PREFIX_STYLE);
	}

}
